When writing data to a conventional flash data memory system, logical addresses are assigned to sectors, clusters or other units of data within a continuous virtual address space of the memory system. The system controller of the memory system then commonly maps data between the logical address space and the physical blocks of the memory, and then accesses one or more flash memory chips using the physical blocks.
Typically, the physical blocks of the memory are arranged on a power-of-2 number of die (such as 2 die, 4 die, 8, die, etc.). The power-of-2 die number enables using a power-of-2 die interleave, thereby simplifying the arithmetic and algorithms throughout the firmware of the memory system. For example, with a power-of-2 number of die, the arithmetic operations simplify to shifts and masks rather than to multiply, divide and modulo.